"""
阶乘
输入非数字异常捕获
使用循环，判断输入范围，并询问是否继续
"""
while True:
    # 异常捕获
    try:
        n = int(float(input("请输入一个整数")))
    except:
        print("请输入数字，不要包含字母和符号")
    else:
        if n >= 0 and n <= 10000:
            fac = 1
            for i in range(1, n + 1):
                print("fac*i", fac, i)
                fac = fac * i
            print(fac)
            # 询问是否继续
            con = input("是否继续？")
            if con != 'y' and con != 'Y':
                break
        else:
            print("输入值不在0-10000范围")
            con = input("是否继续？")
            if con != 'y' and con != 'Y':
                break
